1. Field Of The Invention
The invention relates to a data processing system with a look-up table means for implementing a transfer function with non-uniform resolution, the look-up table means having a memory to store a plurality of function data; an input to receive external addresses for operating the memory; and an output to provide the function data in response to the external addresses.
2. Background Art
Look-up tables are well known devices to implement a predetermined relationship, called a "transfer function" hereinafter, between input data and output data. The look-up table's advantage resides in the fact that substantive real-time processing power is avoided or at least reduced as compared with what would be needed if an algorithm were to be executed in real time. Especially with regard to non-linear transfer functions a look-up table could save a substantial amount of time and/or processing power. Therefore, look-up tables are fast and simple functional building blocks for use in a data processing system.
A look-up table, however, may need a high memory capacity to store large amounts of function data. A large memory in an IC embodiment of a look-up table gives rise to, among other things, a large substrate area, extensive peripheral circuitry such as address decoders and buffers, long supply leads and long signal leads, etc. These aspects degrade system performance and increase the system's size and cost.
A way of reducing a look-up table's memory size is disclosed in U.S. Pat. No. 4,486,797. This prior art document describes a control system to move a load from one position to another position according to a predetermined transfer function, namely a velocity curve. A discrepancy between the current position and the desired position of the load generates an address to access a look-up table. The look-up table thereupon provides a group of digitized values indicative of the velocity curve to be traversed by the load. The domain of the transfer function used, i.e., the range of possible positions, is divided into a sequence of segments. Each next segment is half the size of the preceding segment. For each segment there is stored in the look-up table a fixed number of values for the velocity curve associated with that segment, each segment containing the same fixed number of values. The non-uniform segmentation and the fixed number of velocity values per segment accounts for a non-uniform resolution of the transfer function. The resolution is stepwise increased towards the low velocity portion of the velocity curve. Thus, the memory size is reduced by means of storing a sufficient amount of data distributed non-uniformly over the parameter range in order to omit superfluous data where fine-tuning is not crucial.
The prior art device produces a control signal (a group of digitized values) in two cycles: first the relevant segment and thereupon the segment's relevant portion are to be determined. This constitutes an essentially slower approach than one with a single-cycle operation. Also, the look-up table is based on decreasing the size of each next segment by a constant factor and keeping the number of velocity curve values the same for each segment. Within each segment, the locations (input to look-up table) and velocity values (output of look-up table) are substantially uniformly distributed. Such an architecture is too rigid to implement more general control applications, such as those wherein a transfer function is non-monotonous. Also, the prior art does not explain how to proceed when the transfer function is a function of two or more independent variables or when several control signals are to be produced. Further, the known architecture prescribes an essentially non-uniform input value distribution throughout the whole input signal value range, requiring circuitry operating non-uniformly throughout this range.